package Administrador.Interfaz;
import java.awt.Component;
import java.awt.HeadlessException;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import javax.swing.JOptionPane;
/**
 *
 * @author lisafbe
 */
public class Validador {
 
    
    public void esNulo(String dato)throws Exception{
        if(dato.equals("")){
            System.out.println(dato);
            throw new Exception();
        }}
    
    public boolean nulo(String dato){
     String mensaje="";
     boolean datosValidos=true;
        try{
            esNulo(dato);
    }
    catch(Exception e){
            mensaje="Campo vacio";
            datosValidos=false;
    }
       if(mensaje !=("")){
           
       desplegarMensajeDialogo(null, mensaje, "Info",JOptionPane.DEFAULT_OPTION);
       }
        return datosValidos;
    }
        
        
    public int esNumero(String dato)throws Exception{
        return Integer.parseInt(dato);
    }
    
  public  boolean validarDatosPersonal(String nCedula, String nombres, String apellidos, Calendar fechaNacimiento, String direccion, String telefono, String tcontrasena) {
   boolean datosValidos=true;
   String mensaje="";
   
   try{
            esNulo(nCedula);
            esNulo(nombres);
            esNulo(apellidos);
            esNulo(direccion);
            esNulo(telefono);
            esNulo(tcontrasena);
             
        }catch(Exception e){
            mensaje="Faltan campos por completar.";
            datosValidos=false;
        }   
   
    try{
            validarFechas(fechaNacimiento);
        }catch(Exception e){
            mensaje+= "La fecha de nacimiento debe ser inferior ";
            datosValidos=false;
        }
   
    if(mensaje.equals("")){
            mensaje="Datos almacenados correctamente";
        }
        desplegarMensajeDialogo(null, mensaje, "Info",JOptionPane.DEFAULT_OPTION);
        return datosValidos;   
      

  } 
    
    
      
   
    
    
    
    public void desplegarMensajeDialogo (Component parentComponent,
                                            Object message,
                                            String title,
                                            int messageType) throws HeadlessException {
        
        JOptionPane.showMessageDialog(parentComponent, message, title, messageType);
        
    }

    private void validarFechas(Calendar fechaNacimiento) throws Exception {
      Calendar fecha = new GregorianCalendar();
      int ano = fecha.get(Calendar.YEAR);
        if ( (fechaNacimiento.get(Calendar.YEAR)== ano)||(ano- fechaNacimiento.get(Calendar.YEAR)<18))
        {   throw new Exception();}
    }
    
}
   
    

